﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Suzsoft.Smart.EntityCore;

namespace ESOL.Common.Schema
{
    [Serializable]
    public partial class HrEmployeeIoRecordTable : TableInfo
    {
        public const string C_TableName = "HR_EMPLOYEE_IO_RECORD";

        public const string C_ID = "ID";
        public const string C_REQ_NO = "REQ_NO";
        public const string C_DEPARTMENT_NO = "DEPARTMENT_NO";
        public const string C_EMPLOYEE_NO = "EMPLOYEE_NO";
        public const string C_OUT_DATE = "OUT_DATE";
        public const string C_IN_DATE = "IN_DATE";
        public const string C_PLAN_IN_DATE = "PLAN_IN_DATE";
        public const string C_REASON = "REASON";
        public const string C_REASON_TYPE = "REASON_TYPE";
        public const string C_CAR_NO = "CAR_NO";
        public const string C_STATUS = "STATUS";
        public const string C_CREATED_DATE = "CREATED_DATE";
        public const string C_CREATED_BY = "CREATED_BY";
        public const string C_UPDATED_DATE = "UPDATED_DATE";
        public const string C_UPDATED_BY = "UPDATED_BY";
        public const string C_DEPT_LEADER_DESC = "DEPT_LEADER_DESC";
        public const string C_HR_LEADER_DESC = "HR_LEADER_DESC";

        public HrEmployeeIoRecordTable()
        {
            _tableName = "HR_EMPLOYEE_IO_RECORD";
        }

        protected static HrEmployeeIoRecordTable _current;
        public static HrEmployeeIoRecordTable Current
        {
            get
            {
                if (_current == null)
                {
                    Initial();
                }
                return _current;
            }
        }

        private static void Initial()
        {
            _current = new HrEmployeeIoRecordTable();

            _current.Add(C_ID, new ColumnInfo(C_ID, "Id", true, typeof(string)));
            _current.Add(C_REQ_NO, new ColumnInfo(C_REQ_NO, "ReqNo", false, typeof(string)));
            _current.Add(C_DEPARTMENT_NO, new ColumnInfo(C_DEPARTMENT_NO, "DepartmentNo", false, typeof(string)));
            _current.Add(C_EMPLOYEE_NO, new ColumnInfo(C_EMPLOYEE_NO, "EmployeeNo", false, typeof(string)));
            _current.Add(C_OUT_DATE, new ColumnInfo(C_OUT_DATE, "OutDate", false, typeof(DateTime)));
            _current.Add(C_IN_DATE, new ColumnInfo(C_IN_DATE, "InDate", false, typeof(DateTime)));
            _current.Add(C_PLAN_IN_DATE, new ColumnInfo(C_PLAN_IN_DATE, "PlanInDate", false, typeof(DateTime)));
            _current.Add(C_REASON, new ColumnInfo(C_REASON, "Reason", false, typeof(string)));
            _current.Add(C_REASON_TYPE, new ColumnInfo(C_REASON_TYPE, "ReasonType", false, typeof(string)));
            _current.Add(C_CAR_NO, new ColumnInfo(C_CAR_NO, "CarNo", false, typeof(string)));
            _current.Add(C_STATUS, new ColumnInfo(C_STATUS, "Status", false, typeof(string)));
            _current.Add(C_CREATED_DATE, new ColumnInfo(C_CREATED_DATE, "CreatedDate", false, typeof(DateTime)));
            _current.Add(C_CREATED_BY, new ColumnInfo(C_CREATED_BY, "CreatedBy", false, typeof(string)));
            _current.Add(C_UPDATED_DATE, new ColumnInfo(C_UPDATED_DATE, "UpdatedDate", false, typeof(DateTime)));
            _current.Add(C_UPDATED_BY, new ColumnInfo(C_UPDATED_BY, "UpdatedBy", false, typeof(string)));
            _current.Add(C_DEPT_LEADER_DESC, new ColumnInfo(C_DEPT_LEADER_DESC, "DeptLeaderDesc", false, typeof(string)));
            _current.Add(C_HR_LEADER_DESC, new ColumnInfo(C_HR_LEADER_DESC, "HrLeaderDesc", false, typeof(string)));

        }

        public ColumnInfo ID
        {
            get { return this[C_ID]; }
        }

        public ColumnInfo REQ_NO
        {
            get { return this[C_REQ_NO]; }
        }

        public ColumnInfo DEPARTMENT_NO
        {
            get { return this[C_DEPARTMENT_NO]; }
        }

        public ColumnInfo EMPLOYEE_NO
        {
            get { return this[C_EMPLOYEE_NO]; }
        }

        public ColumnInfo OUT_DATE
        {
            get { return this[C_OUT_DATE]; }
        }

        public ColumnInfo IN_DATE
        {
            get { return this[C_IN_DATE]; }
        }

        public ColumnInfo PLAN_IN_DATE
        {
            get { return this[C_PLAN_IN_DATE]; }
        }

        public ColumnInfo REASON
        {
            get { return this[C_REASON]; }
        }

        public ColumnInfo REASON_TYPE
        {
            get { return this[C_REASON_TYPE]; }
        }

        public ColumnInfo CAR_NO
        {
            get { return this[C_CAR_NO]; }
        }

        public ColumnInfo STATUS
        {
            get { return this[C_STATUS]; }
        }

        public ColumnInfo CREATED_DATE
        {
            get { return this[C_CREATED_DATE]; }
        }

        public ColumnInfo CREATED_BY
        {
            get { return this[C_CREATED_BY]; }
        }

        public ColumnInfo UPDATED_DATE
        {
            get { return this[C_UPDATED_DATE]; }
        }

        public ColumnInfo UPDATED_BY
        {
            get { return this[C_UPDATED_BY]; }
        }

        public ColumnInfo DEPT_LEADER_DESC
        {
            get { return this[C_DEPT_LEADER_DESC]; }
        }

        public ColumnInfo HR_LEADER_DESC
        {
            get { return this[C_HR_LEADER_DESC]; }
        }



    }
}
